<template>
	<view>
		<!-- auth授权页 -->
		<button
			type="primary"
			open-type="getUserInfo" 
			@getuserinfo="getUserInfoHandle" 
		>微信授权登录</button>
	</view>
</template>

<script>
	// uni-app 行为写这里
	export default {
		data() {
			return {
			
			}
		},
		onLoad() {
			
		},
		// uni-app 事件写到 methods 中
		methods: {
			async getUserInfoHandle(e){
				// console.log(e);
				// 1. 获取后端需要的参数数据
				const { signature,iv,rawData,encryptedData, userInfo } = e.detail;
				// console.log({signature,iv,rawData,encryptedData});
				// 2. 把用户信息保存到本地存储，个人不用重复登录
				uni.setStorageSync('userInfo', userInfo);
				// 化简后
				const { code } = (await uni.login())[1];
				// 化简前
				// const res = await uni.login();
				// const { code } = res[1];
				// console.log(code);
				const { token } = await this.$https.post('/users/wxlogin', { signature,iv,rawData,encryptedData,code });
				// console.log(token);
				// 如果成功获取到 token 值
				if(token){
					// 把 token 保存到本地存储中
					uni.setStorageSync('token', token);
					// 后退返回上一页
					uni.navigateBack();
				}else{
					// 获取 token 失败，给用户提示
					uni.showToast({
						title: '出现错误，请重新授权.',
						icon: 'none'
					});
				}
			}
		}
	}
</script>

<style lang="less">
	
</style>
